# 集合（set）是一个无序的不重复元素序列
# 可以使用大括号 { } 或者 set() 函数创建集合。注意：创建一个空集合必须用 set() 而不是 { }，因为 { } 是用来创建一个空字典。
basket = {'apple', 'orange', 'banana', 'pear', 'orange'}
# 集合可以去重
# print(basket)
# # 快速判断元素是否在集合内
# print('orange' in basket)

# 展示两个集合间的运算
# a = set('abcdef')
# print(a)  # {'d', 'c', 'a', 'e', 'f', 'b'}
# b = set('efghij')
# print(a - b)  # 集合a中包含而集合b中不包含的元素
# print(a | b)  # 集合a或b中包含的所有元素
# print(a & b)  # 集合a和b中都包含了的元素
# print(a ^ b)  # 不同时包含于a和b的元素

# 集合 添加元素：s.add(x) 将元素 x 添加到集合 s 中，如果元素已存在，则不进行任何操作
set1 = set(('Google', 'Runoob', 'Taobao'))
set1.add('Facebook')
print(set1)
# s.update(x) 也可以添加元素，参数可以是列表，元组，字典等
set1.update({1, 3})
print(set1)
set1.update([1, 4], [5, 6])
print(set1)

# 移除元素 s.remove(x) 将元素 x 从集合 s 中移除，如果元素不存在，则会发生错误
set1.remove('Google')
print(set1)
# 还有一个方法也是移除集合中的元素，且如果元素不存在，不会发生错误 s.discard(x)
set1.discard('Runoob')
print(set1)
# 也可以设置随机删除集合中的一个元素 s.pop()
# set 集合的 pop 方法会对集合进行无序的排列，然后将这个无序排列集合的左面第一个元素进行删除
set1.pop()
print(set1)
# 清空集合 s.clear()
set1.clear()
print(set1)
